/*罗马数字包含以下七种字符：I， V， X， L，C，D 和 M。
分别对应的数值为：1 ，5，10，50，100，500，1000 。
例如， 罗马数字 3 写做 III，即为三个并列的 1。12 写做 XII，即为 X+II。 26 写做 XXVII, 即为
XX+V+I。
通常情况下，不能出现超过连续三个相同的罗马数字并且罗马数字中小的数字在大的数字的右边。
但也存在特例，例如 4 不写做 IIII，而是 IV。数字 1 在数字 5 的左边，所表示的数等于大数 5 减小
数 1 得到的数值 4 。同样地，数字 9 表示为 IX。这个特殊的规则只适用于以下六种情况：*/
const romanToIntTwo = function (num) { 
    let result = 0; 
    for(let c of num){
        switch(c){
            case "I":
                result +=1;
                break;
            case "V":
                result +=5;
                break;
            case "X":
                result +=10;
                break;
            case "L":
                result +=50;
                break;
            case "C":
                result +=100;
                break;
            case "D":
                result +=500;
                break;
            case "M":
                result +=1000;
                break;
        }
    }
    // 减去特殊组合 
    if(num.includes("IV") || num.includes("IX")){
        result -= 2
    }
    if(num.includes("XL") || num.includes("XC")){
        result -= 20
    }
    if(num.includes("L，C，D") || num.includes("CM")){
        result -= 200
    }
    return result; 
    
}; 
console.log(romanToIntTwo("MCMXCIV"))